Developers Surveys
In this report, we are analyzing the answers from developer surveys conducted by StackOverflow. The results are potentially full of surprising and interesting patterns, however, we are concentrating only on several findings. So this article is by no means comprehensive.
As students pursuing Computer Science degree, we are curious about the satisfaction of the developers. Apparently, nobody is eager to learn how to do something what other people struggle to enjoy.
We analyzed the spectrum of developers career satisfaction again with the respect to a specialization. The more saturated the green the higher satisfaction and by analogy the more saturated the red the lower satisfaction.
Y-axis shows developer types and along X-axis the degree satisfaction is shown.
Interesting observation is a fact that C-suite executive programmers group have the biggest fraction of “extremely satisfied” as well as “extremely dissatisfied” among all groups. It is possible that people at the helm tend to have higher contrast of feeling about their job.
The stance on the career might change over time. Obviously, no one is interested in becoming a developer that on average becomes less satisfied with the job.
The graph presents the average satisfaction(Y-axis) of a programmer depending on the developer type with the growth of experience(X-axis). There is also a line indicating averaged satisfaction level for all programmers without distinction on types. Level of interactivity of this plot allows us to select which lines we want to display and which not. This is very useful for comparing satisfaction between groups as well as analyzing situation for only one group - without unnecessary data.
The thing that makes us (AI students) happy is a fact that Data scientist and ML specialist are one of the most satisfied groups on average. However, C-suite developers tend to be even more happy about their career. Should we rethink our decision?
Now it’s time for something we are still a part of… This short part of our report is devoted to analysis of the education factors.
The graph describes the relation between the participants highest education and their parents’ highest education. To avoid the bias towards frequency, the columns are normalized, i.e. for each level of education of a person, the distribution of parents’ education is shown. Thus, the sum within the column equals exactly one.
This visualization should be analyzed by columns. We also added a white dash line to mark where the axis of theoretical “symmetry” is. There is quite a lot of information that can be derived from that heatmap.
The data partially confirms the message from Nałkowska’s “Granica”, but here maybe not in that strongly negative context. We will become like our parents.
The last part of our report circles around computer operating systems. We tried to find some interesting connections between using some specific OS by a developer and show some tendencies.
We started with general data about which OS is most frequently used by a specific developer’s specialization.
The graph describes the distribution of operating system being currently in use by a specific developer type. Similarly to the education analysis, each pane describes only proportions within the developer type.
Evidently, Windows operating system is the most frequent. To emphasize that Windows dominates all categories, we colored the corresponding bar.
MacOS, however is close in terms of frequency when it comes to C-suite developers. It is likely that heir salaries enables them to use such devices.
GNU/Linux, on the other hand, tends to be popular among researchers and DS/ML specialists apart from Windows. Academic software abundance, in case of educators, and use by performance-oriented systems makes Linux-based OS’es attractive.
At the end of the day, BSD/Unix operating systems are least common, apparently, among all of the developer types we are analyzing.
Even though such kind of analysis is rough, and drawing conclusions would be reckless, it is interesting to observe how a type of operating system might indicate your salary.
The graph focuses on a set of Unix-like operating systems. Y-axis denotes an OS, and along X-axis the distribution of salary is shown. We combined 3 types of plots, that is: a violin plot, a boxplot and a jitter plot.
The visualization is limited by salary: it does not show values of higher than 500 000 to avoid outliers.
Results are sorted by the median from the top to the bottom.
The distributions are close enough, however, there are still considerable difference between higher and lower parts of the graph. The dispersion of amount of people using different OS’es is now visible.
Arch guys are crying.
We are watching tutorials how to use BSD.
We investigated whether OS used by a programmer has an influence on contribution to an open source projects.
Open-source community is huge, no doubt about that. It is convenient to use a tool that you do not have to pay for. Therefore it is curious to know who is the most eager to create the bread and butter for programmers.
The analysis groups operating systems by the type. The proportion of developers that contribute/don’t contribute to the open-source projects is presented.
It turned out that it has and Windows users are the group which proportionally contributes the least.
On the other side, BSD and GNU/Linux users are more interested in contributing to open-source.